apache options参数

        指令控制了在特定目录中将使用哪些服务器特性。Options属性有一个非常特别的功能: 如果你没有用“+”或者“-”来增加或者减少一个功能的时候,每个之前定义的Options的所有功能都会被取消, 直到你又为它指定一些功能。所以options属性在整体设置和虚拟主机设置的是不相关的, 互相不起作用,因为他们在特定的范围内被重载了。 如果要在虚拟主机里面使用在整体设置中的Options的设置, 那么就不要在虚拟主机设置中指定Options属性。如果要增加或者减少功能, 那么用“+”或者“-”符号来实 Options 指令控制了在特定目录中将使用哪些服务器特性。 可选项能设置为 None ,在这种情况下,将不启用任何额外特性。或设置为以下选项中的一个或多个:

  • All 除MultiViews之外的所有特性。这是默认设置。
  • ExecCGI 允许执行CGI脚本.
  • FollowSymLinks 服务器会在此目录中使用符号连接。 注意:即便服务器会使用符号连接,但它不会改变用于匹配配置段的路径名。 如果此配置位于配置段中,则此设置会被忽略。
  • Includes 允许服务器端包含。
  • IncludesNOEXEC 允许服务器端包含,但禁用#exec命令和#exec CGI。但仍可以从 ScriptAliase目录使用#include 虚拟CGI脚本。
  • Indexes 如果一个映射到目录的URL被请求,而此目录中又没有DirectoryIndex(例如:index.html),那么服务器会返回一个格式化后的目录 列表。
  • MultiViews 允许内容协商的多重视图。
  • SymLinksIfOwnerMatch 服务器仅在符号连接与其目的目录或文件拥有者具有同样的用户id时才使用它。 注意:如果此配置出现在配置段中,此选项将被忽略。 一般来说,如果一个目录被多次设置了 Options ,则最特殊的一个会被完全接受,而各个可选项的设定彼此并不融合。然而,如果所有施用于 Options 指令的可选项前都加有+或-符号,此可选项将被合并。所有前面加有+号的可选项将强制覆盖当前可选项设置,而所有前面有-号的可选项将强制从当前可选项设置中去除。

        比如说,没有任何+和-符号:

1
2
3
Options Indexes FollowSymLinks
Options Includes

        则只有 Includes 设置到/web/docs/spec目录上。

        然而如果第二个 Options 指令使用了+和-符号:

1
2
3
Options Indexes FollowSymLinks
Options +Includes -Indexes

        那么就会有 FollowSymLinks 和 Includes 设置到/web/docs/spec目录上。